package com.example.demo.design.memo;

/**
 * @Author: liull
 * @Description:使用备忘录模式时，首先应该存在一个原发器类Originator，在真实业务中，原发器类是一 个具体的业务类，它包含一些用于存储成员数据的属性 它是一个普通类，可以创建一个备忘录，并存储它的当前内部状
 *                                                            态，也可以使用备忘录来恢复其内部状态，一般将需要保存内部状态的类设计为原发器。
 * @Date: Created in 16:45 2021/4/2
 * @Modified By:
 */
public class Originator {
    private String state;

    public Originator() {
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    /**
     * 创建一个备忘录对象
     * 
     * @return
     */
    public Memento createMemento() {
        return new Memento(this);
    }

    public void restoreMemento(Memento m){
        state = m.getState();
    }
}
